package com.bingxue.edu.migration.pay;

import com.bingxue.edu.common.enums.PayTypeEnum;
import com.bingxue.edu.framework.common.model.BusinessEntity;
import com.mybatisflex.annotation.Table;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;
import java.math.BigDecimal;

/**
 * 临时支付记录实体
 *
 * @author panbo
 * @since 2024/09/19 14:16
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Table("temp_pay_record")
public class TempPayRecord extends BusinessEntity {

    /**
     * 学生id
     */
    private String studentId;

    /**
     * 班级id
     */
    private String classId;

    /**
     * 班级学生id
     */
    private String classStudentId;

    /**
     * 老师id
     */
    private String teacherId;

    /**
     * 年级
     */
    private String grade;

    /**
     * 科目
     */
    private String subject;

    /**
     * 班级名称
     */
    private String className;

    /**
     * 原始总价
     */
    private BigDecimal originalTotalPrice;

    /**
     * 实际总价
     */
    private BigDecimal actualTotalPrice;

    /**
     * 是否支付
     */
    private Boolean payOff;

    /**
     * 支付方式
     */
    private PayTypeEnum payType;

    /**
     * 外部交易号
     */
    private String outTradeNo;

    /**
     * 支付时间
     */
    private LocalDateTime payTime;

    /**
     * 财务账户
     */
    private String finAccountId;

    /**
     * 取消时间
     */
    private LocalDateTime cancelTime;

    /**
     * 是否退款
     */
    private Boolean refunded;

    /**
     * 续报状态是否更新
     */
    private Boolean enrollStatusUpdated;

    /**
     * 备注（内部）
     */
    private String remark;

    /**
     * 备注（外部）
     */
    private String remarkOut;
}
